package com.lh.tams.domain;

import java.util.Date;
import java.util.HashSet;
import java.util.Set;

import org.codehaus.jackson.map.annotate.JsonSerialize;

import com.lh.tams.util.diy.CustomDateSerializer;

/**
 * TamsCase entity. @author MyEclipse Persistence Tools
 */

public class TamsCase implements java.io.Serializable {

	// Fields

	private long idBgt;
	/** 接警人 */
	private TamsPerson tamsPersonByInPerson;
	/** 出警人 */
	private TamsPerson tamsPersonByOutPerson;
	/** 接警单位 */
	private TamsDept tamsDeptByInDept;
	/** 出警单位 */
	private TamsDept tamsDeptByOutDept;
	/** 案件编码 */
	private String caseNo;		
	/** 报警人 */
	private String alarmName;
	/** 报警人电话 */
	private String alarmPhone;
	/** 报警人性别 */
	private String sex;
	/** 报警人地址 */
	private String alarmAddress;
	/** 案发地址 */
	private String caseAddress;
	/** 是否危化车辆 */
	private int isDanger;
	/** 报警时间 */
	private Date alarmDate;
	/** 报警类型 */
	private String alarmType;
	/** 案件概述 */
	private String caseContent;
	/** 报警方式：110导入、电话接入 */
	private String alarmWay;
	/** 处理类型 */
	private int dealType;
	/** 审批状态 */
	private int checkType;
	private String remark;
	private String checkRemark;
	/** 分配状态 */
	private int distributeStatus;
	/** 分配时间 */
	private Date distributeDate;
	/** 分配是否超时限 */
	private int isOutTime = -1;
	
	@JsonSerialize(using=CustomDateSerializer.class)
	public Date getDistributeDate() {
		return distributeDate;
	}

	public void setDistributeDate(Date distributeDate) {
		this.distributeDate = distributeDate;
	}

	public int getIsOutTime() {
		return isOutTime;
	}

	public void setIsOutTime(int isOutTime) {
		this.isOutTime = isOutTime;
	}

	private Set<TamsRegister> tamsRegisters=new HashSet<TamsRegister>();
	private Set<TamsIdentify> tamsIdentifys=new HashSet<TamsIdentify>();

	// Constructors

	/** default constructor */
	public TamsCase() {
	}

	/** minimal constructor */
	public TamsCase(long idBgt) {
		this.idBgt = idBgt;
	}

	/** full constructor */
	public TamsCase(long idBgt, TamsPerson tamsPersonByInPerson,
			TamsPerson tamsPersonByOutPerson, TamsDept tamsDeptByInDept,
			TamsDept tamsDeptByOutDept, String caseNo, String alarmName,
			String alarmPhone, String sex, String alarmAddress,
			String caseAddress, int isDanger, Date alarmDate,
			String alarmType, String caseContent, String alarmWay,
			int dealType, int checkType, String remark,int distributeStatus) {
		this.idBgt = idBgt;
		this.tamsPersonByInPerson = tamsPersonByInPerson;
		this.tamsPersonByOutPerson = tamsPersonByOutPerson;
		this.tamsDeptByInDept = tamsDeptByInDept;
		this.tamsDeptByOutDept = tamsDeptByOutDept;
		this.caseNo = caseNo;
		this.alarmName = alarmName;
		this.alarmPhone = alarmPhone;
		this.sex = sex;
		this.alarmAddress = alarmAddress;
		this.caseAddress = caseAddress;
		this.isDanger = isDanger;
		this.alarmDate = alarmDate;
		this.alarmType = alarmType;
		this.caseContent = caseContent;
		this.alarmWay = alarmWay;
		this.dealType = dealType;
		this.checkType = checkType;
		this.remark = remark;
		this.distributeStatus = distributeStatus;
	}

	// Property accessors

	public long getIdBgt() {
		return this.idBgt;
	}

	public void setIdBgt(long idBgt) {
		this.idBgt = idBgt;
	}

	public TamsPerson getTamsPersonByInPerson() {
		return this.tamsPersonByInPerson;
	}

	public void setTamsPersonByInPerson(TamsPerson tamsPersonByInPerson) {
		this.tamsPersonByInPerson = tamsPersonByInPerson;
	}

	public TamsPerson getTamsPersonByOutPerson() {
		return this.tamsPersonByOutPerson;
	}

	public void setTamsPersonByOutPerson(TamsPerson tamsPersonByOutPerson) {
		this.tamsPersonByOutPerson = tamsPersonByOutPerson;
	}

	public TamsDept getTamsDeptByInDept() {
		return this.tamsDeptByInDept;
	}

	public void setTamsDeptByInDept(TamsDept tamsDeptByInDept) {
		this.tamsDeptByInDept = tamsDeptByInDept;
	}

	public TamsDept getTamsDeptByOutDept() {
		return this.tamsDeptByOutDept;
	}

	public void setTamsDeptByOutDept(TamsDept tamsDeptByOutDept) {
		this.tamsDeptByOutDept = tamsDeptByOutDept;
	}

	public String getCaseNo() {
		return this.caseNo;
	}

	public void setCaseNo(String caseNo) {
		this.caseNo = caseNo;
	}

	public String getAlarmName() {
		return this.alarmName;
	}

	public void setAlarmName(String alarmName) {
		this.alarmName = alarmName;
	}

	public String getAlarmPhone() {
		return this.alarmPhone;
	}

	public void setAlarmPhone(String alarmPhone) {
		this.alarmPhone = alarmPhone;
	}

	public String getSex() {
		return this.sex;
	}

	public void setSex(String sex) {
		this.sex = sex;
	}

	public String getAlarmAddress() {
		return this.alarmAddress;
	}

	public void setAlarmAddress(String alarmAddress) {
		this.alarmAddress = alarmAddress;
	}

	public String getCaseAddress() {
		return this.caseAddress;
	}

	public void setCaseAddress(String caseAddress) {
		this.caseAddress = caseAddress;
	}

	public int getIsDanger() {
		return this.isDanger;
	}

	public void setIsDanger(int isDanger) {
		this.isDanger = isDanger;
	}

	@JsonSerialize(using=CustomDateSerializer.class)
	public Date getAlarmDate() {
		return alarmDate;
	}

	public void setAlarmDate(Date alarmDate) {
		this.alarmDate = alarmDate;
	}

	public String getAlarmType() {
		return this.alarmType;
	}

	public void setAlarmType(String alarmType) {
		this.alarmType = alarmType;
	}

	public String getCaseContent() {
		return this.caseContent;
	}

	public void setCaseContent(String caseContent) {
		this.caseContent = caseContent;
	}

	public String getAlarmWay() {
		return this.alarmWay;
	}

	public void setAlarmWay(String alarmWay) {
		this.alarmWay = alarmWay;
	}

	public int getDealType() {
		return this.dealType;
	}

	public void setDealType(int dealType) {
		this.dealType = dealType;
	}

	public int getCheckType() {
		return this.checkType;
	}

	public void setCheckType(int checkType) {
		this.checkType = checkType;
	}

	public String getRemark() {
		return this.remark;
	}

	public void setRemark(String remark) {
		this.remark = remark;
	}

	public String getCheckRemark() {
		return checkRemark;
	}

	public void setCheckRemark(String checkRemark) {
		this.checkRemark = checkRemark;
	}
	
	public int getDistributeStatus() {
		return distributeStatus;
	}

	public void setDistributeStatus(int distributeStatus) {
		this.distributeStatus = distributeStatus;
	}

	public Set<TamsRegister> getTamsRegisters() {
		return new HashSet<TamsRegister>();//返回一个空的
	}

	public void setTamsRegisters(Set<TamsRegister> tamsRegisters) {
		this.tamsRegisters = tamsRegisters;
	}

	public Set<TamsIdentify> getTamsIdentifys() {
		return new HashSet<TamsIdentify>();
	}

	public void setTamsIdentifys(Set<TamsIdentify> tamsIdentifys) {
		this.tamsIdentifys = tamsIdentifys;
	}

	
	

}